#ifndef __STDFX_H__
#define __STDFX_H__

#include <iostream>
#include <string>
#include <list>
#include <vector>
#include <bitset>
#include <algorithm>
#include <memory>
#include <assert.h>


#include <boost/noncopyable.hpp>
#include <boost/predef.h>
#include <boost/random/mersenne_twister.hpp>
#include <boost/random/uniform_int_distribution.hpp>

#ifdef BOOST_OS_WINDOWS

#include <boost/thread.hpp>

namespace std
{
   using boost::mutex;
   using boost::recursive_mutex;
   using boost::lock_guard;
   using boost::condition_variable;
   using boost::unique_lock;
   using boost::thread;
   using boost::once_flag;
   using boost::call_once;
}

#else

#include <thread>
#include <mutex>

#endif

#include "signals.h"

//boost::mt19937 gen;

#endif